name: Scorecard supply-chain security
on:
  branch_protection_rule:
  schedule:
  - cron: '33 13 * * 5'
  push:
    branches:
    - "main"

permissions:
  contents: read


jobs:
  analysis:
    name: Scorecard analysis
    runs-on: ubuntu-22.04
    permissions:
      security-events: write
      id-token: write

    steps:
    - name: "Checkout code"
      uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11  # v4.1.1
      with:
        persist-credentials: false

    - name: "Run analysis"
      uses: ossf/scorecard-action@0864cf19026789058feabb7e87baa5f140aac736  # v2.3.1
      with:
        results_file: results.sarif
        results_format: sarif
        publish_results: true

    - name: "Upload artifact"
      uses: actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3  # v4.3.1
      with:
        name: SARIF file
        path: results.sarif
        retention-days: 5

    - name: "Upload to code-scanning"
      uses: github/codeql-action/upload-sarif@379614612a29c9e28f31f39a59013eb8012a51f0  # v3.24.3
      with:
        sarif_file: results.sarif
